C2000 주의 사항

* 프로그램 코드 사이즈가 클 때 램 부팅에 실패한다면 ?

이러한 상황은 특히 TMS320C2834x 시리즈에서 발생됩니다. 프로그램 코드 사이즈가 커지면서 c_int00에서 cinit 섹션 변수들을 초기화하는 시간이 오래 걸리게 됩니다. 이때 일정 시간이 초과하게 되면 와치독이 작동하여 리셋이 걸리게 되며, 리셋후 MCU는 램 부팅이 아닌 다른 부팅 모드(보통 플래시 부팅)로 부팅하게 되어 결국 램 부팅은 실패하게 됩니다. 이를 예방하기 위해서는 c_int00에 진입하기 전에 와치독을 비활성화시키는 code_start (TI 예제 파일에서 제공)를 entry point로 지정하여 주십시오. 링커 옵션에서 -ecode_start 를 사용하세요.

* XDS100을 같이 사용할 때는

TI사의 에뮬레이터 XDS100v1 CCS v3.3에서 사용하실 경우, easyDSP와 같이 사용할 수 없습니다. 이는, CCS v3.3에서 XDS100v1를 사용할 경우, FTDI사의 USB 제어 칩을 다중으로 지원하지 않기 때문입니다. XDS100v1(또는 XDS100v2)를  CCS v4 이후 버전에서 사용하실 경우에는 easyDSP와 같이 사용될 수 있습니다.

* easyDSP가 지정한 포트를 사용하지 않고 다른 포트를 사용할 경우

예를 들어, SCI통신하는 F28335의 경우, easyDSP는 SCIRXDA, SCITXDA로 각각 GPIO28번, GPIO29번을 사용하도록 지정하고 있습니다. 만약 사용자가  SCIRXDA, SCITXDA로 각각 GPIO36번, GPIO35번을 사용하게 되면, 일반적인 모니터링 통신은 가능하지만, SCI 부팅이 안되어 램부팅 및 플래시 프로그래밍이 동작하지 않게 됩니다.  F28335 부트롬에 SCI 부팅은  GPIO28번, GPIO29번 포트만을 통해서 이루어지도록 지정되어 있기 때문입니다.  

* easyDSP 통신 도중에 MCU를 리셋시키면?

리셋 이후 MCU가 플래쉬롬 부팅을 한다면 문제가 없습니다.
만약 기본 부팅모드가 램 부팅으로 되어 있다면  매우 적은 확률이지만 MCU 폭주할 위험이 있습니다. 왜냐하면, MCU는 램 부팅모드로 진입되고, 이때 easyDSP 통신을 위하여 내보내는 신호를 MCU 부팅을 위한 데이타로 인식하게 됩니다. 램 부팅을 위한 데이타에도 준수되어야 할 형식이 있으므로, 통신을 위한 데이타가 부팅을 위한 데이타로 인식될 확률은 매우 적습니다만.